home *** CD-ROM | disk | FTP | other *** search
- /* animtools.h */
- #ifndef GELTOOLS_H
- #define GELTOOLS_H
-
- /*
- ** These data structures are used by the functions in animtools.c to
- ** allow for an easier interface to the animation system.
- */
-
- /* Data structure to hold information for a new VSprite. */
- typedef struct newVSprite {
- WORD *nvs_Image; /* image data for the vsprite */
- WORD *nvs_ColorSet; /* color array for the vsprite */
- SHORT nvs_WordWidth; /* width in words */
- SHORT nvs_LineHeight; /* height in lines */
- SHORT nvs_ImageDepth; /* depth of the image */
- SHORT nvs_X; /* initial x position */
- SHORT nvs_Y; /* initial y position */
- SHORT nvs_Flags; /* vsprite flags */
- USHORT nvs_HitMask; /* Hit mask. */
- USHORT nvs_MeMask; /* Me mask. */
- } NEWVSPRITE;
-
- /* Data structure to hold information for a new Bob. */
- typedef struct newBob {
- WORD *nb_Image; /* image data for the bob */
- SHORT nb_WordWidth; /* width in words */
- SHORT nb_LineHeight; /* height in lines */
- SHORT nb_ImageDepth; /* depth of the image */
- SHORT nb_PlanePick; /* planes that get image data */
- SHORT nb_PlaneOnOff; /* unused planes to turn on */
- SHORT nb_BFlags; /* bob flags */
- SHORT nb_DBuf; /* 1=double buf, 0=not */
- SHORT nb_RasDepth; /* depth of the raster */
- SHORT nb_X; /* initial x position */
- SHORT nb_Y; /* initial y position */
- USHORT nb_HitMask; /* Hit mask. */
- USHORT nb_MeMask; /* Me mask. */
- } NEWBOB ;
-
- /* Data structure to hold information for a new animation component. */
- typedef struct newAnimComp {
- WORD (*nac_Routine)(); /* routine called when Comp is displayed. */
- SHORT nac_Xt; /* initial delta offset position. */
- SHORT nac_Yt; /* initial delta offset position. */
- SHORT nac_Time; /* Initial Timer value. */
- SHORT nac_CFlags; /* Flags for the Component. */
- } NEWANIMCOMP;
-
- /* Data structure to hold information for a new animation sequence. */
- typedef struct newAnimSeq {
- struct AnimOb *nas_HeadOb; /* common Head of Object. */
- WORD *nas_Images; /* array of Comp image data */
- SHORT *nas_Xt; /* arrays of initial offsets. */
- SHORT *nas_Yt; /* arrays of initial offsets. */
- SHORT *nas_Times; /* array of Initial Timer value. */
- WORD (**nas_Routines)(); /* Array of fns called when comp drawn */
- SHORT nas_CFlags; /* Flags for the Component. */
- SHORT nas_Count; /* Num Comps in seq (= arrays size) */
- SHORT nas_SingleImage; /* one (or count) images. */
- } NEWANIMSEQ;
-
- #define INTUITIONNAME "intuition.library" /* intuitionbase.h does not define a library name. */
- #endif
-
- /* animtools_proto.h */
- #include <clib/dos_protos.h>
- #include <clib/exec_protos.h>
- #include <clib/graphics_protos.h>
- #include <clib/intuition_protos.h>
-
- struct GelsInfo *setupGelSys(struct RastPort *rPort, BYTE reserved);
- VOID cleanupGelSys(struct GelsInfo *gInfo, struct RastPort *rPort);
- struct VSprite *makeVSprite(NEWVSPRITE *nVSprite);
- struct Bob *makeBob(NEWBOB *nBob);
- struct AnimComp *makeComp(NEWBOB *nBob, NEWANIMCOMP *nAnimComp);
- struct AnimComp *makeSeq(NEWBOB *nBob, NEWANIMSEQ *nAnimSeq);
- VOID freeVSprite(struct VSprite *vsprite);
- VOID freeBob(struct Bob *bob, LONG rasdepth);
- VOID freeComp(struct AnimComp *myComp, LONG rasdepth);
- VOID freeSeq(struct AnimComp *headComp, LONG rasdepth);
- VOID freeOb(struct AnimOb *headOb, LONG rasdepth);
-
-